TechHuB SQMS

Software Quality management system

The governance of engineering, management and security process

 

Contents

 

01- Software Engineering Processes @Project Level 1

02- Data Engineering Processes. 1

03-Software Management Processes @Project Level 1

04-Software Processes @Organizational Level 1

05-Organization Templates. 1

 

 

01- Software Engineering Processes @Project Level

S#

Main Process

Procedure Name

Purpose

Audit Checklist

Roles

1.        

Configuration Management

Establish CM Environment

Establish the CM system (storage media, system, tools)

Infrastructure_Solutions_audit checklist

Configuration Controller

2.        

CM_Planning_Procedure

Develop the project plan for configuration management for the project.

 

Configuration Controller

Scrum Master

3.        

CM_Baselining_Procedure

Produce baselines from the identified CI's.

 

Product Owner

Scrum Master

Configuration Controller

 

4.        

CM_Change_Control_Procedure

Guide change management process starting from request, evaluation, implemented and verification.

 

Configuration Controller

Product Owner

Scrum Master

5.        

CM_Maintaining_CM_Environment_Procedure

Guide the performance of saving changes to any stable work product over healthy environment.

 

Configuration Controller

Product Owner

Scrum Master

6.        

Analysis Phase

Requirement Elicitation

Capture candidate software requirements (functional and non-functional).

 

Product Owner

Scrum Master

7.        

Requirement Analysis

understand the requirements to resolve conflicts and inconsistencies and to ensure that they meet the required quality attributes and reflect the customer needs.

 

Product Owner

Scrum Master

UX

8.        

Design Phase

Architecture Design

Develop a coherent, well-organized representation of the software product that meets the customer’s requirements and satisfies the predefined quality criteria.

 

Scrum Master

Software developer

9.        

Detailed design

Architectural design and detailed design are for the solution upon the analysis models.

 

Scrum Master

Software developer

10.     

Development Phase

Implementation

 

 transformation of the detailed design representation into a programming language and database engines.

 

Scrum Master

Software developer

11.     

Code Refactoring

Evaluate, and enhance current software code process according to a predefined standards focusing on the business needs and highly bad analysis metrics.

 

Scrum Master

Software developer

12.     

DB Refactoring

The objective of this procedure is to evaluate, and enhance current database design and procedures according to a predefined standards focusing on the business needs and highly bad analysis metrics.

 

Scrum Master

Software developer

13.     

Resolve Issues

objectively settle a concrete solution based on clear inputs, for the raised issues by the quality team, either control or assurance.

 

Scrum Master

Software developer

14.     

Releasing

 

Software releasing refers to the creation and availability of a new version of a software product. Each time a software product has major changes, the project team should decide on how to distribute the changes or the changed system to the customer. Release procedure is the procedure concerned with the compilation, assembly and delivery of source code and any related documentation into finished products or other software components.

 

 

Scrum Master

Product Owner

 

15.     

Testing Phase

System testing Preparation

Testing process is a category of V & V, which takes part during the software life cycle. The testing process can be represented in three phases. Test preparation phase, test execution phase and test analysis phase. These phases are applicable for all types of testing (integration, system and acceptance and unit testing). Preparation and execution have separate procedures, while the analysis is a part of the releasing procedure.

 

Scrum Master

Quality Control

 

16.     

Unit Testing preparation

Unit testing process can be represented in three phases. Test preparation phase, test execution phase and test analysis phase. These phases are applicable for all types of testing (integration, system and acceptance and unit testing). Preparation and execution have separate procedures, while the analysis is a part of the releasing procedure.

As a developer, you can't proof you finished your work till an evidence of completeness, unit test is your evident if you meet code coverage% meet benchmarked percentage.

Integration testing occurred per modules in order to assure collaboration between them.

 

 

 

Scrum Master

Quality Control

 

17.     

Acceptance testing preparation

Testing process is a category of V & V, which takes part during the software life cycle. The testing process can be represented in three phases. Test preparation phase, test execution phase and test analysis phase. These phases are applicable for all types of testing (integration, system and acceptance and unit testing). Preparation and execution have separate procedures, while the analysis is a part of the releasing procedure.

 

 

Scrum Master

Quality Control

 

18.     

Unit Testing execution

This is the procedure in which the actual test takes place. Concurrently to the testing activities, errors are corrected and have to be re-tested. In order to effectively coordinate development and testing activities, a defined procedure for error reporting and tracking is needed. Based on a comparison of the actual results with the expected results, and according to the pass/fail rate, determination shall be made and recorded in a defect log. The defect tracking enables defect reporting against discovered problems in the software, and managing and tracking the status of the defects from creation to closure.

 

Quality Control

 

19.     

System & Acceptance testing execution

This is the procedure in which the actual test takes place. Concurrently to the testing activities, errors are corrected and have to be re-tested. In order to effectively coordinate development and testing activities a defined procedure for error report and tracking is needed. Based on a comparison of the actual results with the expected results, and according to the pass/fail rate, determination shall be made and recorded in a defect log. The defect tracking enables defect reporting against discovered problems in the software, managing and tracking the status of the defects from creation to closure.

 

Scrum Master

Product Owner

Quality Control

 

20.     

Security Testing

The objective of this procedure is to set preventive security guidelines and plan/execute/follow-up security testing process

 

Scrum Master

Product Owner

Quality Control

 

21.     

Quality assurance

QA Planning

The objective of this procedure is to establish a reasonable plan for performing QA auditing activities on the project level, and to be augmented in the project from the initial stages. This will provide a strong infrastructure for the project's success.

Infrastructure_Solutions_audit checklist

Scrum Master

Product Owner

Quality Assurance Rep

22.     

Quality Execution

The objective of this procedure is to execute the QA auditing activities on the project level according to the QA plan. Auditing and evaluating project processes and work products are done to ensure the adherence to applicable process description, standards and procedures as per the project’s processes. Auditing ensures that all issues and/or deviations detected during audit process are communicated to relevant stakeholders and that the corrective actions are identified and documented.

 

Infrastructure_Solutions_audit checklist

Quality Assurance Rep

23.     

Quality Follow-up

The objective of this procedure is to ensure the closure of all NCs appeared in the QA audit according to the agreed upon corrective actions or escalating the non-closed NCs to the senior management to take the required and suitable action.

 

Infrastructure_Solutions_audit checklist

Quality Assurance Rep

24.     

Peer Review

Peer Review Planning

The planning phase enables the identification of the work products to be reviewed, the method to be used to perform the review and the requirements to be satisfied by each selected work product is identified.

The Peer review process can be a part of the VAL and VER processes in CMMI.

Validation means: Are we building the correct product?

VER means: Are we building the product correctly?

 

 

Scrum Master

Product Owner

25.     

Peer Review Execution

 

The execution phase involves the preparation and execution of the peer review meetings

 

Scrum Master

Product Owner

26.     

Peer Review Follow-up

In the follow-up procedure, corrections of all defects planned for rework are verified. The performers confirm that all open issues have been resolved, and all redline errors have been corrected, and closing out the review. This procedure may be mandatory or optional depending on the method of review used

 

Scrum Master

Product Owner

 

02- Data Engineering Processes

S#

Process Area

Template Name

Objectives

Roles

1.        

Data Mining process

Data Reporting process

Procedure to enable data reporting and analysis for all application data over all solution objects in order to group, consolidate and analyze data.

 

2.        

Data Mining process

Data Analysis process

Procedure to apply both data analysis and data science over the overall solution to make descriptive and predictive models

 

3.        

Data Mining process

Data Science process

Procedure to apply both data analysis and data science over the overall solution to make descriptive and predictive models

 

 

03-Software Management Processes @Project Level

S#

Process Area

Template Name

Objectives

Roles

1.        

Project Management

Project Initiation

 

The purpose of this procedure is to initiate the project and identify the higher level of information needed for the project management plan based on the information provided from the Statement of Work (SOW) document or any other equivalent documentation from the pre-sales phase. In this phase, the standards by which project’s work products are to be developed will be identified, the Life Cycle Model (LCM) for software development and the tools to be used on the project will be identified also.

Scrum Master

Product Owner

2.        

PM Sizing & Estimation

The purpose of this procedure is to identify project estimates including size, effort, and cost. These estimates are used to develop and define project’s schedule, project’s team organization and non-human resources.

All relevant stakeholders

3.        

Risk Management

The purpose of this procedure is to identify project’s risks, assess and assign priority to each risk and finally plan for mitigation and contingencies

All relevant stakeholders

4.        

PM planning finalization

The purpose of this procedure is to consolidate the project master plan with other plans and estimation data. After the consolidation, the procedure defines the tracking activities during project execution and the responsibilities and assignments for these activities. Obtaining commitment from project team and senior management is important as well as the project plan itself. These commitments are taken from all relevant stakeholders in this procedure.

All relevant stakeholders

5.        

Project Monitoring and Control

The purpose of this procedure is to monitor, collect and analyze all project data. The aim of the monitoring activities is to determine whether the project is on track or not, take corrective actions when the project deviates significantly from the Project Management Plan and finally, communicate the project status with management, team and customer.

Scrum Master

Product Owner

6.        

Measurements analysis

The purpose of Measurement and Analysis (MA) is to develop and sustain a measurement capability that is used to support management information needs.

Scrum Master

Product Owner

7.        

Project management closure

The closure phase of the project

 

 

04-Software Processes @Organizational Level

S#

Process Area

Template Name

Objectives

Roles

1.        

Enterprise Architecture Process

 

 

EA team

2.        

General

Organization Policies

Define the policies that guide the process and procedures.

Management level

3.        

Process improvement

Organization Evaluation Procedure

 

EPG

4.        

Process improvement planning

 

EPG

5.        

Process improvement Execution

 

EPG

6.        

Process improvement follow-up

 

EPG

7.        

Process improvement Closure

 

EPG

 

05-Organization Templates

S#

Process Area

Template Name

Objectives

1.        

General

Research Document

A document that used to record the research topics assigned to each team member.

2.        

Analysis Phase

Impact Analysis Document

A document that used to record the require changes and impacts of the current running solutions in order to implement the required  change requests

3.        

Development Phase

Audit Checklists

Audit checklists are used to

4.        

Development Phase

Integration document

Define the integration between different components in order to be used as a developer guide.

5.        

Development Phase

Release Notes

A document that used for recording the work performed per project/product, with mentioning of the installation guide and procedures.

6.        

Development Phase

Google App Store Requirements

A document that represent the main requirements of uploading the solution over the store.

Like description, graphics, promo video.

7.        

Project Management

& Engineering

Out-source requirements model

Define the required management and engineering methodologies by outsourced companies.